var DBmanager = {};

DBmanager.name = 'fang';
DBmanager.path = '_doc/fangDB.db';

// 打开数据库 
DBmanager.openDb = function() {

	if (DBmanager.isDbOpen()) {
		// console.info("数据库已经打开, 不用再开了");
		return;
	}

	plus.sqlite.openDatabase({
		name: DBmanager.name,
		path: DBmanager.path,
		success: function(e) {
			console.log('打开了数据库');
		},
		fail: function(e) {
			console.log('数据库打开失败: ' + JSON.stringify(e));
		}
	});
}

// 关闭数据库
DBmanager.closeDb = function() {
	if (!DBmanager.isDbOpen()) {
		return;
	}
	plus.sqlite.closeDatabase({
		name: DBmanager.name,
		success: function() {
			console.info("关闭数据库成功")
		},
		fail: function(err) {
			console.info(err.message);
		}
	})
}

// 检查数据库是否已经开启  -- 返回 true 表示数据库开启 -- 同步代码
DBmanager.isDbOpen = function() {
	return plus.sqlite.isOpenDatabase({
		name: DBmanager.name,
		path: DBmanager.path
	})
}


// 实际业务: 建表
document.addEventListener('plusready', function() {
	DBmanager.openDb();
	plus.sqlite.executeSql({
		name: DBmanager.name,
		sql: 'create table if not exists trips("id" CHAR(300), "content" CHAR(300), "location" CHAR(300), "pic" CHAR(100) )',
		success: function(e) {
			DBmanager.closeDb();
		},
		fail: function(e) {
			console.log('创建trips 表失败: ' + JSON.stringify(e));
		}
	});
}, false);


// 实际业务: 新增一条trip 游记
DBmanager.createTrip = async function(trip) {
	DBmanager.openDb();
	var ok = false;
	await plus.sqlite.executeSql({
		name: DBmanager.name,
		sql: `insert into trips('id', 'content', 'location',  'pic') 
			values( '${trip.id}', '${trip.content}',  '${trip.location}', '${trip.pic}' )`,
		success: function(e) {
			DBmanager.closeDb();
			ok = true;
		},
		fail: function(e) {
			console.log('新增游记 - 失败: ' + JSON.stringify(e));
			ok = false;
		}
	});
	return ok;
}


DBmanager.getTop10 = function() {
	DBmanager.openDb();
	var top10 = null;
	
	//


}
